15 款顶级开源人工智能工具推荐
#长按上图识别二维码,参与OSC源创会年终盛典#
人工智能是技术研究领域最炙手可热的领域之一。IBM、谷歌、微软、Facebook和亚马逊等公司正投入巨资进行研发,并纷纷收购在机器学习、神经网络、神经语言和图像处理等领域取得进展的初创公司。考虑到人工智能如此受关注,斯坦福大学的专家最近撰写的一份智能研究报告得出结论:“现在到2030年人工智能可能会出现越来越有用的应用,有可能给我们的社会和经济带来深远的积极影响,”也就不足为奇了。
我们在本文中专注于开源人工智能工具,着重介绍15个知名度最大的开源人工智能项目。
Caffe是加州大学伯克利分校攻读博士学位者的杰作,这是一种深度学习框架,基于表达式架构和可扩展代码。速度快是它赖以成名的特点,因而在研究人员和企业用户当中都备受欢迎。据官方网站声称,仅仅使用一个英伟达K40 GPU,它在短短一天内就能够处理6000多万个图像。它由伯克利视觉和学习中心(BVLC)管理,英伟达和亚马逊等公司提供了拨款,支持它的发展。
更多详情:https://www.oschina.net/p/caffe
CNTK的全称是计算网络工具包,它是微软的开源人工智能工具之一。它声称拥有出众的性能,无论在只有CPU的系统上运行,在只有一个CPU的系统上运行,在拥有多个GPU的系统上运行,还是在拥有多个GPU的多台机器上运行,都是如此。微软主要用它来研究语音识别,但是它同样适用于其他应用领域,比如机器翻译、图像识别、图像字幕、文本处理、语言理解和语言建模。
相关链接:https://www.cntk.ai
Deeplearning4j是一种面向Java虚拟机(JVM)的开源深度学习库。它在分布式环境中运行,可与Hadoop和Apache Spark整合起来。它让用户可以配置深度神经网络,与Java、Scala及其他JVM语言兼容。
该项目由一家名为Skymind的商业公司管理,该公司提供收费的支持、培训和Deeplearning4j的企业发行版。
相关链接:http://deeplearning4j.org
与CNTK一样,分布式机器学习工具包(DMTK)是微软的开源人工智能工具之一。它是为大数据应用领域设计,旨在更快地训练人工智能系统。它包括三大部分:DMTK框架、LightLDA主题模型算法以及分布式(Multisense)单词嵌入算法。微软声称,在8个集群机器上,它能够“针对拥有1000多亿个权标的文档集合,训练拥有100万个主题和1000万个单词词汇表(共有10万亿个参数)的主题模型,”这个成绩是其他工具无法比拟的,这也证明了DMTK的速度有多快。
相关链接:http://www.dmtk.io
H2O更加专注于人工智能在企业领域的应用,而不是在研究领域的应用,它的用户包括诸多大公司:第一资本、思科、尼尔森Catalina、贝宝及Transamerica。它声称让任何人都可以使用机器学习和预测分析的强大功能,解决业务问题。它可用于预测建模、风险及欺诈分析、保险分析、广告技术、医疗保健和客户情报。
它有两种开源版本:标准的H2O和Sparkling Water,后者与Apache Spark集成起来。它还提供收费的企业支持。
相关链接:http://www.h2o.ai
Mahout是Apache基金会下面的一个项目,是一种开源机器学习框架。据官方网站声称,它提供三种主要的特性:用于构建可扩展算法的编程环境、面向Spark和H2O等工具的预制算法,以及名为Samsara的向量数学试验环境。使用Mahout的公司包括:Adobe、埃森哲、Foursquare、英特尔、领英、推特、雅虎及其他许多公司。可通过官方网站上所列的第三方获得专业支持。
相关链接:http://mahout.apache.org
Apache Spark以速度快著称,它已成为最流行的大数据处理工具之一。MLlib是Spark的可扩展机器学习库。它与Hadoop整合起来,可与NumPy和R协同操作。它包括一大批机器学习算法,可用于分类、回归、决策树、推荐、聚类、主题建模、特性转换、模型评估、机器学习管道构建、机器学习持久性、生存分析、频繁项集、顺序模式挖掘、分布式线性代数和统计。
相关链接:https://spark.apache.org/mllib
NuPIC由一家名为Numenta的公司管理,这是一种开源人工智能项目,基于一种名为分层式即时记忆(即HTM)的理论。实际上,HTM试图建立一种模仿人类大脑新皮层而建的计算机系统。目的在于制造“处理许多认知任务时接近或胜过人类表现”的机器。
除了开源许可证外,Numenta还提供采用商业许可证的NuPic,它还提供作为它技术底层的专利方面的许可证。
相关链接:http://numenta.org
OpenNN为深入了解人工智能的研究人员和开发人员而设计,这是一种用于实现神经网络的C++编程库。主要特性包括:深度架构和卓越性能。官方网站上有全面的说明文档,包括解释神经网络基础知识的入门教程。可通过Artelnics获得OpenNN的收费支持,总部位于西班牙的这家公司主攻预测分析。
相关链接:http://www.opennn.net
OpenCyc由一家名为Cycorp的公司开发,它让用户可以访问Cyc知识库和常识推理引擎。它包括239000多个术语、约2093000个三元组以及大约69000个owl:sameAs链接(指向外部语义数据命名空间)。它用于丰富域名建模、语义数据整合、文本理解、特定领域专家系统和游戏人工智能。这家公司还提供Cyc的另外两个版本:一个是非开源免费版本,面向研究人员;另一个面向企业用户,需要收费。
相关链接:http://www.cyc.com/platform/opencyc
Oryx 2建立在Apache Spark和Kafka上,这是一种专门的应用开发框架,面向大规模的机器学习。它使用了一种独特的lambda架构,有三个层次。开发人员可使用Oryx 2来构建新的应用程序,它还包括一些预制应用程序,处理常见的大数据任务,比如协作过滤、分类、回归和聚类。大数据工具厂商Cloudera建立了最初的Oryx 1项目,一直大力参与持续开发工作。
相关链接:http://oryx.io
今年2月份,Salesforce收购了PredictionIO,后来在7月份,它把该平台连同商标一起捐献给了Apache基金会,该基金会将它列为孵化器项目。所以,虽然Salesforce使用PredictionIO技术来完善自己的机器学习功能,但是开源版本方面的工作也会继续下去。它可帮助用户构建拥有机器学习功能的预测引擎,这些功能可用来部署实时响应动态查询的Web服务。
相关链接:https://prediction.io
SystemML最初由IBM开发,现在它是Apache旗下的一个大数据项目。它提供了一种高度可扩展的平台,可以实施用R或类似Python的语法编写的高级运算和算法。企业已经在用它来跟踪汽车维修方面的客户服务,引导机场客流量,或者将社交媒体数据与银行客户联系起来。它可以在Spark或Hadoop上运行。
相关链接:http://systemml.apache.org
TensorFlow是谷歌的开源人工智能工具之一。它提供了用于数字计算的库,使用数据流图。它可以在众多不同的搭载单一或多个CPU和GPU的系统上运行,甚至可以在移动设备上运行。它拥有深度灵活性、真正的可移植性、自动差分功能,并支持Python和C++。官方网站上列有非常丰富的教程和实用文章,可供有兴趣使用或扩展其功能的开发人员或研究人员使用。
相关链接:https://www.tensorflow.org
Torch自称是“一种科学计算框架,广泛支持把GPU放在首位的机器学习算法。”这里的重点在于灵活性和速度。此外,很容易与众多方面的软件包结合使用:机器学习、计算机视觉、信号处理、并行处理、图像、视频、音频和网络。它依赖一种名为LuaJIT的脚本语言,这种语言基于Lua。
源创会年终盛典是由“开源中国社区”主办的开源技术盛会,一年一次,旨在推广和传播开源技术,关注开源社区和开发者、关注开源软件和技术实践、关注前沿科技和技术新领域。大会为期1天,面向所有软件技术开发者,规模 6000人,是一场大型的开源技术大会。
年终盛典的主题,是我们从今年以来开源软件技术的众多主题中选取出来的精华,抛弃了华而不实的背景和光环,让技术分享回归到开源软件本身,落实到软件代码,为开发者打造一场酣畅淋漓的纯技术分享盛典。
本次年终盛典我们邀请了众多的技术专家跟大家分享人工智能的精彩主题。
人工智能注定是未来发展方向之一,随着本年度人机围棋大赛的成功举办,我们有理由相信这个未来已离我们很接近了。本主题将邀请国内外著名的专家和实践者,为大家分享机器人、自动驾驶、神经网络和深度学习方面的相关知识和实践案例。
分享主题:
1.房地产领域的机器学习 —— 链家网大数据架构师 蔡白银
2.云计算时代的深度学习训练 —— 七牛云技术专家 林亦宁
3.人工智能时代的数据工程 —— MBH创客蜂巢创始人兼CEO 刘端阳
4.人工智能 — 于无声处听惊雷 —— 地平线机器人技术公司创始人 余凯
5.开源无人机的市场前景——Dronecode中国区负责人 斯东